table of contents
FUSER(1) | Komendy użytkownika | FUSER(1) |
NAZWA¶
fuser - podaje procesy korzystające z plików lub soketów
SKŁADNIA¶
fuser [-a|-s] [-4|-6]
[-n przestrzeń_nazw]
[-sygnał] [-kimuv] nazwa_pliku
...
fuser -l
fuser -V
OPIS¶
fuser wyświetla PID-y procesów, które korzystają z podanych plików lub systemów plików. W domyślnym trybie wyświetlania po każdej nazwie pliku występuje litera, oznaczająca rodzaj dostępu:
fuser zwraca niezerowy kod, jeśli nie można było dostać się do żadnego z plików lub po błędzie krytycznym. Jeśli udał się dostęp do choćby jednego pliku, fuser zwraca zero.
Aby móc wyszukać procesy używające soketów TCP lub UDP, trzeba za pomocą opcji -n wybrać odpowiednią przestrzeń nazw. Domyślnie, fuser będzie szukał zarówno soketów IPv6, jak i soketów IPv4. Aby to zmienić, należy użyć opcji -4 i -6. Soket(y) może (mogą) być określony(-ne) przez podanie portów lokalnego i zdalnego oraz zdalnego adresu. Wszystkie pola są nieobowiązkowe, trzeba jednak podać przecinki poprzedzające opuszczone pola:
[port_lokalny][,[zdalny_komp][,[port_zdalny]]]
Adresy IP oraz numery portów mogą być podane albo w postaci symbolicznej, albo jako numery.
OPCJE¶
- -a
- Pokazuje wszystkie pliki, podane w linii komend. Domyślnie pokazywane są tylko pliki, do których dostęp uzyskał przynajmniej jeden proces.
- -k
- Ubija procesy korzystające z pliku. Jeśli nie jest użyta opcja -sygnał, wysyłany jest SIGKILL. Proces fuser nigdy sam siebie nie ubije, lecz może ubić inne procesy fuser. Przed próbą ubicia efektywny ID użytkownika procesu jest ustawiany na rzeczywisty.
- -i
- Przed ubiciem procesu, prosi użytkownika o potwierdzenie. Opcja ta jest ignorowana, jeżeli nie podano opcji -k.
- -l
- Wyświetla wszystkie znane nazwy sygnałów.
- -m nazwa_pliku
- Podaje plik na zamontowanym systemie plików lub zamontowane urządzenie blokowe. Wszystkie korzystające z niego procesy zostaną wymienione. Jeśli podany plik jest katalogiem, to zmieniany jest automatycznie na nazwę_pliku/. , aby używać dowolnego systemu plików, który mógłby być zamontowany w tym katalogu.
- -n przestrzeń_nazw
- Wybiera inną przestrzeń nazw. Dostępne są następujące przestrzenie nazw: file (nazwy plików, ustawienie domyślne), udp (lokalne porty UDP) i tcp (lokalne porty TCP). Porty mogą być podane w postaci nazw symbolicznych albo jako numery. Jeżeli nie spowoduje to dwuznaczności, można użyć skróconej notacji nazwa/przestrzeń_nazw (np. nazwa/protokół).
- -s
- Ciche działanie. -u i -v są w tym trybie ignorowane. -a nie może być użyta z -s.
- -sygnał
- zamiast SIGKILL używaj określonego sygnału. Sygnały można podawać według nazw (np. -HUP) lub przez liczbę (np. -1).
- -u
- Do każdego PID-a dodaj nazwę użytkownika, który jest jego właścicielem.
- -v
- Tryb gadatliwy. Procesy są pokazywane w stylu ps(1). Pola PID, USER i COMMAND są podobne do tych w ps. ACCESS pokazuje sposób dostępu do pliku. Jeżeli plik jest używany przez jądro systemu (np. w wypadku punktu montowania, pliku wymiany itp.), wartością tego pola jest kernel.
- -V
- Wyświetla informację o wersji.
- -4
- Wyszukuje tylko sokety IPv4. Ta opcja nie może być używana łącznie z opcją -6, a używanie jej ma efekt tylko z przestrzeniami nazw tcp i udp.
- -6
- Wyszukuje tylko sokety IPv6. Ta opcja nie może być używana łącznie z opcją -4, a używanie jej ma efekt tylko z przestrzeniami nazw tcp i udp.
- -
- Resetuj wszystkie opcje i ustaw sygnał z powrotem na SIGKILL.
PLIKI¶
/proc miejsce znajdowania się systemu plików proc
PRZYKŁADY¶
fuser -km /home ubija wszystkie procesy, które w jakikolwiek sposób korzystają z systemu plików /home.
if fuser -s /dev/ttyS1; then :; else coś; fi wywołuje coś, jeśli żaden inny proces nie używa /dev/ttyS1.
fuser telnet/tcp pokazuje wszystkie procesy nasłuchujące na (lokalnym) porcie TELNET.
OGRANICZENIA¶
Procesy, korzystające z tych samych plików lub systemu plików kilkukrotnie, są wyświetlane tylko raz.
fuser jest w stanie uzyskać tylko częściowe dane, chyba że pracujesz z odpowiednimi uprawnieniami. W wyniku tego, otwarte pliki, należące do innych użytkowników mogą nie być wymienione, a pliki wykonywalne mogą być sklasyfikowane jako tylko zmapowane.
Instalowanie fuser z SUID root zapobiegłoby problemom z częściowymi danymi, lecz mogłoby być niepożądane z przyczyn bezpieczeństwa.
Przestrzenie nazw udp i tcp oraz sokety domeny UNIX nie mogą być wyszukiwane, jeżeli wersja jądra jest mniejsza niż 1.3.78.
Obecnie udp i tcp działają z IPv6 i IPv4, ale jako adresy są wyświetlane tylko adresy IPv4.
Informacje o tym, że to jądro systemu używa jakiegoś pliku, są wyświetlane tylko wtedy, gdy podano opcję -v.
Opcja -k dotyczy tylko procesów. Jeżeli dany system plików używany jest przez jądro systemu, to fuser wypisze ostrzeżenia, ale nie podejmie żadnej akcji.
AUTOR¶
Werner Almesberger <Werner.Almesberger@epfl.ch>
ZOBACZ TAKŻE¶
1 października 1999 | Linux |